/*
 * Decompiled with CFR 0.150.
 * 
 * Could not load the following classes:
 *  cn.hutool.core.collection.CollUtil
 *  cn.hutool.core.date.DateUtil
 *  cn.hutool.core.util.ObjectUtil
 *  cn.hutool.core.util.StrUtil
 *  com.alibaba.fastjson.JSON
 *  com.alibaba.fastjson.JSONObject
 *  de.felixroske.jfxsupport.FXMLController
 *  javafx.collections.FXCollections
 *  javafx.collections.ObservableList
 *  javafx.event.EventHandler
 *  javafx.fxml.FXML
 *  javafx.fxml.Initializable
 *  javafx.geometry.Insets
 *  javafx.scene.Node
 *  javafx.scene.control.Alert
 *  javafx.scene.control.Alert$AlertType
 *  javafx.scene.control.Button
 *  javafx.scene.control.CheckBox
 *  javafx.scene.control.ChoiceBox
 *  javafx.scene.control.DatePicker
 *  javafx.scene.control.Pagination
 *  javafx.scene.control.ScrollPane
 *  javafx.scene.control.TableCell
 *  javafx.scene.control.TableColumn
 *  javafx.scene.control.TableView
 *  javafx.scene.control.TextField
 *  javafx.scene.control.cell.PropertyValueFactory
 *  javafx.scene.input.KeyCode
 *  javafx.scene.input.KeyEvent
 *  javafx.scene.layout.HBox
 *  javafx.scene.layout.VBox
 *  javafx.scene.text.Text
 *  javafx.stage.Modality
 *  javafx.util.Callback
 *  javafx.util.StringConverter
 *  org.springframework.beans.factory.annotation.Autowired
 *  org.springframework.util.CollectionUtils
 */
package com.gys.controller.allot;

import cn.hutool.core.collection.CollUtil;
import cn.hutool.core.date.DateUtil;
import cn.hutool.core.util.ObjectUtil;
import cn.hutool.core.util.StrUtil;
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONObject;
import com.gys.GysApplication;
import com.gys.common.business.AllotUtil;
import com.gys.common.business.SaleScheduleSettingUtil;
import com.gys.common.data.HttpJson;
import com.gys.common.data.PageInfo;
import com.gys.common.util.CacheUtil;
import com.gys.common.util.CommonUtil;
import com.gys.common.util.ConstUtil;
import com.gys.controller.BaseController;
import com.gys.controller.allot.AddAllotController;
import com.gys.controller.index.IndexController;
import com.gys.data.accept.GsdcEmp;
import com.gys.data.allot.GetAllotDetailOutData;
import com.gys.data.allot.GetAllotInData;
import com.gys.data.allot.GetAllotOutData;
import com.gys.data.deviceCheck.GsdcStatus;
import com.gys.data.example.GetLoginStoreOutData;
import com.gys.data.example.GetUserOutData;
import com.gys.data.saleScheduleSetting.GetSaleScheduleInData;
import com.gys.view.allot.AddView;
import de.felixroske.jfxsupport.FXMLController;
import java.net.URL;
import java.time.LocalDate;
import java.util.ArrayList;
import java.util.Collection;
import java.util.Date;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.ResourceBundle;
import javafx.collections.FXCollections;
import javafx.collections.ObservableList;
import javafx.event.EventHandler;
import javafx.fxml.FXML;
import javafx.fxml.Initializable;
import javafx.geometry.Insets;
import javafx.scene.Node;
import javafx.scene.control.Alert;
import javafx.scene.control.Button;
import javafx.scene.control.CheckBox;
import javafx.scene.control.ChoiceBox;
import javafx.scene.control.DatePicker;
import javafx.scene.control.Pagination;
import javafx.scene.control.ScrollPane;
import javafx.scene.control.TableCell;
import javafx.scene.control.TableColumn;
import javafx.scene.control.TableView;
import javafx.scene.control.TextField;
import javafx.scene.control.cell.PropertyValueFactory;
import javafx.scene.input.KeyCode;
import javafx.scene.input.KeyEvent;
import javafx.scene.layout.HBox;
import javafx.scene.layout.VBox;
import javafx.scene.text.Text;
import javafx.stage.Modality;
import javafx.util.Callback;
import javafx.util.StringConverter;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.util.CollectionUtils;

@FXMLController
public class AllotController
extends BaseController
implements Initializable {
    private final int pageSize = ConstUtil.DEFAULT_PAGESIZE;
    private final int defaultPageCount = ConstUtil.DEFAULT_PAGECOUNT;
    private ObservableList<GetAllotOutData> basicObservableTableList = FXCollections.observableArrayList(new ArrayList());
    private ObservableList<GetAllotOutData> observableTableList = FXCollections.observableArrayList(new ArrayList());
    private ObservableList<GetAllotDetailOutData> detailObservableTableList = FXCollections.observableArrayList(new ArrayList());
    @FXML
    private ScrollPane scrollPane;
    @FXML
    private VBox vBox;
    @FXML
    private Button enterBtn;
    @FXML
    private Button addBtn;
    @FXML
    private HBox queryHbox;
    @FXML
    private HBox queryHbox1;
    @FXML
    private HBox boxView;
    @FXML
    private TextField voucherIdQuery;
    @FXML
    private TextField orderNoQuery;
    @FXML
    private TextField bathCodeQuery;
    @FXML
    private TextField productCodeQuery;
    @FXML
    private TextField storeCodeQuery;
    @FXML
    private TextField restoreCodeQuery;
    @FXML
    private ChoiceBox<GsdcEmp> acceptPeopleQuery;
    @FXML
    private ChoiceBox<GsdcStatus> statusQuery;
    @FXML
    private DatePicker updateDateQuery;
    @FXML
    private DatePicker acceptDateQuery;
    @FXML
    private TableView<GetAllotOutData> tableView;
    @FXML
    private TableView<GetAllotOutData> tableViewTwo;
    @FXML
    private TableView<GetAllotDetailOutData> tableViewThree;
    @FXML
    private TableColumn<GetAllotOutData, String> gsamhVoucherId1;
    @FXML
    private TableColumn<GetAllotOutData, String> status1;
    @FXML
    private TableColumn<GetAllotOutData, String> status2;
    @FXML
    private TableColumn<GetAllotOutData, String> status3;
    @FXML
    private TableColumn<GetAllotOutData, CheckBox> checkBox;
    @FXML
    private TableColumn<GetAllotOutData, String> index;
    @FXML
    private TableColumn<GetAllotOutData, String> gsamhVoucherId;
    @FXML
    private TableColumn<GetAllotOutData, String> gsamhDate;
    @FXML
    private TableColumn<GetAllotOutData, String> gsamhFinishDate;
    @FXML
    private TableColumn<GetAllotOutData, String> gsamhFrom;
    @FXML
    private TableColumn<GetAllotOutData, String> gsamhTo;
    @FXML
    private TableColumn<GetAllotOutData, String> gsamhType;
    @FXML
    private TableColumn<GetAllotOutData, String> gsamhTotalAmt;
    @FXML
    private TableColumn<GetAllotOutData, String> gsamhTotalQty;
    @FXML
    private TableColumn<GetAllotOutData, String> gsamhInvoicesId;
    @FXML
    private TableColumn<GetAllotOutData, String> gsamhStatus;
    @FXML
    private TableColumn<GetAllotOutData, String> gsamhEmp;
    @FXML
    private TableColumn<GetAllotOutData, String> gsamhEmp1;
    @FXML
    private TableColumn<GetAllotDetailOutData, String> gsamdSerial;
    @FXML
    private TableColumn<GetAllotDetailOutData, String> gsamdProId;
    @FXML
    private TableColumn<GetAllotDetailOutData, String> proName;
    @FXML
    private TableColumn<GetAllotDetailOutData, String> proPrice;
    @FXML
    private TableColumn<GetAllotDetailOutData, String> gsamdBatchNo;
    @FXML
    private TableColumn<GetAllotDetailOutData, String> gsamdBatch;
    @FXML
    private TableColumn<GetAllotDetailOutData, String> gsamdValidDate;
    @FXML
    private TableColumn<GetAllotDetailOutData, String> gsamdStockQty;
    @FXML
    private TableColumn<GetAllotDetailOutData, String> gsamdRecipientQty;
    @FXML
    private TableColumn<GetAllotDetailOutData, String> gsamdStockStatus;
    @FXML
    private TableColumn<GetAllotDetailOutData, String> proFactoryName;
    @FXML
    private TableColumn<GetAllotDetailOutData, String> proPlace;
    @FXML
    private TableColumn<GetAllotDetailOutData, String> proForm;
    @FXML
    private TableColumn<GetAllotDetailOutData, String> proUnit;
    @FXML
    private TableColumn<GetAllotDetailOutData, String> proSpecs;
    @FXML
    private TableColumn<GetAllotDetailOutData, String> proRegisterNo;
    @FXML
    private Pagination pagination;
    @FXML
    private Insets tableViewInsets;
    @Autowired
    private AddAllotController addAllotController;
    @Autowired
    private IndexController indexController;
    List<GetUserOutData> outDataList = new ArrayList<GetUserOutData>();
    private ObservableList<String> empOptions;
    List<String> emps = new ArrayList<String>();
    Map<String, GetUserOutData> empsMap = new HashMap<String, GetUserOutData>();
    public String voucherId;

    public void initialize(URL location, ResourceBundle resources) {
        this.scrollPane.setPrefWidth(this.getContentWidth());
        this.scrollPane.setPrefHeight(this.getContentHeight());
        this.vBox.setPrefWidth(this.getContentWidth());
        this.vBox.setPrefHeight(this.getContentHeight());
        this.tableView.setPrefWidth(this.getContentWidth());
        this.tableViewTwo.setPrefWidth(this.getContentWidth());
        this.tableViewThree.setPrefWidth(this.getContentWidth());
        this.pagination.setPrefWidth(this.getContentWidth());
        this.statusQuery.getItems().addAll(this.getAllStatus());
        this.statusQuery.converterProperty().set(new StringConverter<GsdcStatus>(){

            public String toString(GsdcStatus object) {
                return object.getName();
            }

            public GsdcStatus fromString(String string) {
                return null;
            }
        });
        StringConverter converter = CommonUtil.dataPickerFormat("yyyyMMdd");
        this.updateDateQuery.setConverter(converter);
        this.acceptDateQuery.setConverter(converter);
        this.pagination.setPageFactory((Callback)new Callback<Integer, Node>(){

            public Node call(Integer pageNum) {
                return AllotController.this.initTable(pageNum);
            }
        });
        this.emps.clear();
        this.outDataList.clear();
        this.empsMap.clear();
        GetSaleScheduleInData inData = new GetSaleScheduleInData();
        inData.setClientId(((GetUserOutData)CacheUtil.get("logInUser")).getClient());
        inData.setGsegBrId(((GetLoginStoreOutData)CacheUtil.get("store")).getStoCode());
        HttpJson httpJson = SaleScheduleSettingUtil.queryUser(CommonUtil.convertToMap(inData));
        if (!httpJson.isSuccess()) {
            Alert alert = this.createAlert(Alert.AlertType.INFORMATION, "\u63d0\u793a\u4fe1\u606f", httpJson.getMsg());
            alert.showAndWait();
            return;
        }
        this.outDataList = JSON.parseArray((String)httpJson.getMsg(), GetUserOutData.class);
        ArrayList list = new ArrayList();
        this.outDataList.forEach(item -> {
            this.emps.add(item.getLoginName());
            this.empsMap.put(item.getLoginName(), (GetUserOutData)item);
            GsdcEmp emp = new GsdcEmp(item.getUserId(), item.getLoginName());
            list.add(emp);
        });
        this.empOptions = FXCollections.observableArrayList(this.emps);
        this.acceptPeopleQuery.getItems().addAll(list);
        this.acceptPeopleQuery.converterProperty().set(new StringConverter<GsdcEmp>(){

            public String toString(GsdcEmp object) {
                return object.getName();
            }

            public GsdcEmp fromString(String string) {
                return null;
            }
        });
    }

    @Override
    public void init() {
        this.indexController.scrollContentPane.setOnKeyReleased((EventHandler)new EventHandler<KeyEvent>(){

            public void handle(KeyEvent event) {
                if (event.getCode() == KeyCode.F1) {
                    AllotController.this.add();
                    return;
                }
                if (event.getCode() == KeyCode.ENTER) {
                    AllotController.this.searchData();
                }
            }
        });
        this.pagination.setPageFactory((Callback)new Callback<Integer, Node>(){

            public Node call(Integer pageNum) {
                return AllotController.this.initTable(pageNum);
            }
        });
    }

    @FXML
    private void searchData() {
        Alert alert = this.createAlert(Alert.AlertType.INFORMATION, "\u63d0\u793a\u4fe1\u606f", null);
        if (StrUtil.isBlank((CharSequence)this.voucherIdQuery.getText().trim()) && ObjectUtil.isNull(this.statusQuery.getValue()) && ObjectUtil.isNull(this.acceptPeopleQuery.getValue()) && StrUtil.isBlank((CharSequence)this.productCodeQuery.getText().trim()) && ObjectUtil.isNull(this.updateDateQuery.getValue()) && ObjectUtil.isNull(this.acceptDateQuery.getValue()) && StrUtil.isBlank((CharSequence)this.orderNoQuery.getText().trim()) && StrUtil.isBlank((CharSequence)this.bathCodeQuery.getText().trim()) && StrUtil.isBlank((CharSequence)this.storeCodeQuery.getText().trim()) && StrUtil.isBlank((CharSequence)this.restoreCodeQuery.getText().trim())) {
            alert.setContentText("\u5fc5\u987b\u81f3\u5c11\u586b\u5199\u4e00\u9879\u5185\u5bb9\u8fdb\u884c\u67e5\u8be2\uff01");
            alert.showAndWait();
            return;
        }
        this.initTable(0);
        this.pagination.setCurrentPageIndex(0);
    }

    @FXML
    private void reset() {
        this.voucherIdQuery.clear();
        this.orderNoQuery.clear();
        this.statusQuery.setValue(null);
        this.updateDateQuery.setValue(null);
        this.productCodeQuery.clear();
        this.bathCodeQuery.clear();
        this.acceptPeopleQuery.setValue(null);
        this.acceptDateQuery.setValue(null);
        this.storeCodeQuery.clear();
        this.restoreCodeQuery.clear();
    }

    @FXML
    private void add() {
        this.voucherId = "";
        this.addAllotController.init();
        GysApplication.showView(AddView.class, (Modality)Modality.APPLICATION_MODAL);
    }

    public TableView<GetAllotOutData> initTable(int pageNum) {
        List<GetAllotOutData> dataList;
        PageInfo pageInfo;
        HttpJson rsp;
        GetAllotInData inData = new GetAllotInData();
        inData.setPageNum(pageNum + 1);
        inData.setPageSize(this.pageSize);
        if (ObjectUtil.isNotEmpty(this.voucherIdQuery.getText().trim())) {
            inData.setGsamhVoucherId(this.voucherIdQuery.getText().trim());
        }
        if (ObjectUtil.isNotNull(this.statusQuery.getValue())) {
            inData.setGsamhStatus(((GsdcStatus)this.statusQuery.getValue()).getCode());
        }
        if (ObjectUtil.isNotNull(this.acceptPeopleQuery.getValue())) {
            inData.setGsamhEmp(((GsdcEmp)this.acceptPeopleQuery.getValue()).getCode());
        }
        if (ObjectUtil.isNotEmpty(this.productCodeQuery.getText().trim())) {
            inData.setProId(this.productCodeQuery.getText().trim());
        }
        if (ObjectUtil.isNotEmpty(this.orderNoQuery.getText().trim())) {
            inData.setGsamhInvoicesId(this.orderNoQuery.getText().trim());
        }
        if (ObjectUtil.isNotEmpty(this.storeCodeQuery.getText().trim())) {
            inData.setGsamhFrom(this.storeCodeQuery.getText().trim());
        }
        if (ObjectUtil.isNotEmpty(this.restoreCodeQuery.getText().trim())) {
            inData.setGsamhTo(this.restoreCodeQuery.getText().trim());
        }
        if (ObjectUtil.isNotEmpty(this.bathCodeQuery.getText().trim())) {
            inData.setBatchNo(this.bathCodeQuery.getText().trim());
        }
        if (ObjectUtil.isNotNull(this.updateDateQuery.getValue())) {
            inData.setGsamhDate(DateUtil.format((Date)DateUtil.parse((String)((LocalDate)this.updateDateQuery.getValue()).toString()), (String)"yyyyMMdd"));
        }
        if (ObjectUtil.isNotNull(this.acceptDateQuery.getValue())) {
            inData.setGsamhFinishDate(DateUtil.format((Date)DateUtil.parse((String)((LocalDate)this.acceptDateQuery.getValue()).toString()), (String)"yyyyMMdd"));
        }
        if ((rsp = AllotUtil.selectList(inData)).isSuccess()) {
            pageInfo = (PageInfo)JSON.parseObject((String)rsp.getMsg(), PageInfo.class);
            if (pageInfo != null && CollUtil.isNotEmpty(pageInfo.getList())) {
                ArrayList<GetAllotOutData> listTemp = new ArrayList<GetAllotOutData>();
                for (int i = 0; i < pageInfo.getList().size(); ++i) {
                    String str = JSONObject.toJSONString(pageInfo.getList().get(i));
                    GetAllotOutData outData = (GetAllotOutData)JSONObject.parseObject((String)str, GetAllotOutData.class);
                    if ("1".equals(outData.getGsamhStatus())) {
                        outData.setGsamhStatus("\u7533\u8bf7\u5f85\u786e\u8ba4");
                    }
                    if ("2".equals(outData.getGsamhStatus())) {
                        outData.setGsamhStatus("\u53d1\u8d27\u5f85\u786e\u8ba4");
                    }
                    if ("3".equals(outData.getGsamhStatus())) {
                        outData.setGsamhStatus("\u8c03\u5242\u5f85\u786e\u8ba4");
                    }
                    if ("4".equals(outData.getGsamhStatus())) {
                        outData.setGsamhStatus("\u8c03\u5242\u5df2\u5b8c\u6210");
                    }
                    outData.setIndex(i + 1);
                    listTemp.add(outData);
                }
                pageInfo.setList(listTemp);
            }
        } else {
            Alert alert = this.createAlert(Alert.AlertType.INFORMATION, "\u63d0\u793a\u4fe1\u606f", rsp.getMsg());
            alert.showAndWait();
            return new TableView();
        }
        if (pageInfo != null && CollUtil.isNotEmpty(pageInfo.getList())) {
            this.pagination.setPageCount(pageInfo.getPages());
            dataList = pageInfo.getList();
        } else {
            this.pagination.setPageCount(this.defaultPageCount);
            dataList = new ArrayList();
        }
        this.basicObservableTableList.clear();
        this.observableTableList.clear();
        this.detailObservableTableList.clear();
        this.observableTableList = FXCollections.observableArrayList(dataList);
        this.bingTableCell();
        this.tableViewTwo.setItems(this.observableTableList);
        return this.tableViewTwo;
    }

    private void bingTableCell() {
        this.index.setCellValueFactory((Callback)new PropertyValueFactory(this.index.getId()));
        this.checkBox.setCellValueFactory(cellData -> ((GetAllotOutData)cellData.getValue()).getCheckBox().getCustomCheckBox());
        this.checkBox.setCellFactory(col -> {
            TableCell<GetAllotOutData, CheckBox> cell = new TableCell<GetAllotOutData, CheckBox>(){

                protected void updateItem(CheckBox item, boolean empty) {
                    super.updateItem(item, empty);
                    this.setGraphic((Node)item);
                    if (item != null) {
                        item.setOnMouseClicked(col -> {
                            if (CollUtil.isEmpty((Collection)AllotController.this.observableTableList)) {
                                return;
                            }
                            int index = this.getIndex();
                            for (int i = 0; i < AllotController.this.observableTableList.size(); ++i) {
                                if (i == index) continue;
                                ((GetAllotOutData)AllotController.this.observableTableList.get(i)).getCheckBox().setSelectStatus(false);
                            }
                            if (((GetAllotOutData)AllotController.this.observableTableList.get(index)).getCheckBox().isSelected().booleanValue()) {
                                ArrayList<GetAllotOutData> list = new ArrayList<>();
                                ((GetAllotOutData)AllotController.this.observableTableList.get(index)).setStatus1("\u672a\u5b8c\u6210");
                                ((GetAllotOutData)AllotController.this.observableTableList.get(index)).setStatus2("\u672a\u5b8c\u6210");
                                ((GetAllotOutData)AllotController.this.observableTableList.get(index)).setStatus3("\u672a\u5b8c\u6210");
                                GetAllotOutData depotOutData = new GetAllotOutData();
                                depotOutData.setGsamhVoucherId1("\u5feb\u6377\u5165\u53e3");
                                if ("\u7533\u8bf7\u5f85\u786e\u8ba4".equals(((GetAllotOutData)AllotController.this.observableTableList.get(index)).getGsamhStatus())) {
                                    depotOutData.setStatus1("1");
                                }
                                if ("\u53d1\u8d27\u5f85\u786e\u8ba4".equals(((GetAllotOutData)AllotController.this.observableTableList.get(index)).getGsamhStatus())) {
                                    ((GetAllotOutData)AllotController.this.observableTableList.get(index)).setStatus1("\u5ba1\u6838\u5b8c\u6210");
                                    depotOutData.setStatus2("1");
                                }
                                if ("\u8c03\u5242\u5f85\u786e\u8ba4".equals(((GetAllotOutData)AllotController.this.observableTableList.get(index)).getGsamhStatus())) {
                                    ((GetAllotOutData)AllotController.this.observableTableList.get(index)).setStatus1("\u5ba1\u6838\u5b8c\u6210");
                                    ((GetAllotOutData)AllotController.this.observableTableList.get(index)).setStatus2("\u5ba1\u6838\u5b8c\u6210");
                                    depotOutData.setStatus3("1");
                                }
                                if ("\u8c03\u5242\u5df2\u5b8c\u6210".equals(((GetAllotOutData)AllotController.this.observableTableList.get(index)).getGsamhStatus())) {
                                    ((GetAllotOutData)AllotController.this.observableTableList.get(index)).setStatus1("\u5ba1\u6838\u5b8c\u6210");
                                    ((GetAllotOutData)AllotController.this.observableTableList.get(index)).setStatus2("\u5ba1\u6838\u5b8c\u6210");
                                    ((GetAllotOutData)AllotController.this.observableTableList.get(index)).setStatus3("\u5ba1\u6838\u5b8c\u6210");
                                }
                                ((GetAllotOutData)AllotController.this.observableTableList.get(index)).setGsamhVoucherId1(((GetAllotOutData)AllotController.this.observableTableList.get(index)).getGsamhVoucherId());
                                list.add(AllotController.this.observableTableList.get(index));
                                list.add(depotOutData);
                                AllotController.this.initBasicTableView(list);
                                GetAllotInData inData = new GetAllotInData();
                                inData.setClientId(((GetUserOutData)CacheUtil.get("logInUser")).getClient());
                                inData.setGsamhVoucherId(((GetAllotOutData)AllotController.this.observableTableList.get(index)).getGsamhVoucherId());
                                inData.setStoreCode(((GetLoginStoreOutData)CacheUtil.get("store")).getStoCode());
                                List<GetAllotDetailOutData> dataList = new ArrayList();
                                HttpJson httpJson = AllotUtil.queryDetail(inData);
                                if (httpJson.isSuccess()) {
                                    dataList = JSON.parseArray((String)httpJson.getMsg(), GetAllotDetailOutData.class);
                                } else {
                                    Alert alert = AllotController.this.createAlert(Alert.AlertType.INFORMATION, "\u63d0\u793a\u4fe1\u606f", httpJson.getMsg());
                                    alert.showAndWait();
                                }
                                for (GetAllotDetailOutData detailOutData : dataList) {
                                    if ("1".equals(detailOutData.getGsamdStockStatus())) {
                                        detailOutData.setGsamdStockStatus("\u7533\u8bf7\u5f85\u786e\u8ba4");
                                    }
                                    if ("2".equals(detailOutData.getGsamdStockStatus())) {
                                        detailOutData.setGsamdStockStatus("\u53d1\u8d27\u5f85\u786e\u8ba4");
                                    }
                                    if ("3".equals(detailOutData.getGsamdStockStatus())) {
                                        detailOutData.setGsamdStockStatus("\u8c03\u5242\u5f85\u786e\u8ba4");
                                    }
                                    if (!"4".equals(detailOutData.getGsamdStockStatus())) continue;
                                    detailOutData.setGsamdStockStatus("\u8c03\u5242\u5df2\u5b8c\u6210");
                                }
                                AllotController.this.initDetailTableView(dataList);
                            } else {
                                AllotController.this.detailObservableTableList.clear();
                                AllotController.this.basicObservableTableList.clear();
                            }
                        });
                    }
                }
            };
            return cell;
        });
        this.gsamhVoucherId.setCellValueFactory((Callback)new PropertyValueFactory(this.gsamhVoucherId.getId()));
        this.gsamhDate.setCellValueFactory((Callback)new PropertyValueFactory(this.gsamhDate.getId()));
        this.gsamhFinishDate.setCellValueFactory((Callback)new PropertyValueFactory(this.gsamhFinishDate.getId()));
        this.gsamhFrom.setCellValueFactory((Callback)new PropertyValueFactory(this.gsamhFrom.getId()));
        this.gsamhTo.setCellValueFactory((Callback)new PropertyValueFactory(this.gsamhTo.getId()));
        this.gsamhType.setCellValueFactory((Callback)new PropertyValueFactory(this.gsamhType.getId()));
        this.gsamhTotalAmt.setCellValueFactory((Callback)new PropertyValueFactory(this.gsamhTotalAmt.getId()));
        this.gsamhTotalQty.setCellValueFactory((Callback)new PropertyValueFactory(this.gsamhTotalQty.getId()));
        this.gsamhInvoicesId.setCellValueFactory((Callback)new PropertyValueFactory(this.gsamhInvoicesId.getId()));
        this.gsamhStatus.setCellValueFactory((Callback)new PropertyValueFactory(this.gsamhStatus.getId()));
        this.gsamhEmp.setCellValueFactory((Callback)new PropertyValueFactory(this.gsamhEmp.getId()));
        this.gsamhEmp1.setCellValueFactory((Callback)new PropertyValueFactory(this.gsamhEmp1.getId()));
    }

    private TableView<GetAllotOutData> initBasicTableView(List<GetAllotOutData> dataList) {
        this.basicObservableTableList.clear();
        this.basicObservableTableList = FXCollections.observableArrayList(dataList);
        this.gsamhVoucherId1.setCellValueFactory((Callback)new PropertyValueFactory(this.gsamhVoucherId1.getId()));
        this.status1.setCellValueFactory((Callback)new PropertyValueFactory(this.status1.getId()));
        this.status2.setCellValueFactory((Callback)new PropertyValueFactory(this.status2.getId()));
        this.status3.setCellValueFactory((Callback)new PropertyValueFactory(this.status3.getId()));
        this.tableView.setItems(this.basicObservableTableList);
        this.button(this.status1);
        this.button(this.status2);
        this.button(this.status3);
        return this.tableView;
    }

    private TableView<GetAllotDetailOutData> initDetailTableView(List<GetAllotDetailOutData> dataList) {
        this.detailObservableTableList.clear();
        this.detailObservableTableList = FXCollections.observableArrayList(dataList);
        this.bingDetailTableCell();
        this.tableViewThree.setItems(this.detailObservableTableList);
        return this.tableViewThree;
    }

    private void bingDetailTableCell() {
        this.gsamdSerial.setCellValueFactory((Callback)new PropertyValueFactory(this.gsamdSerial.getId()));
        this.gsamdProId.setCellValueFactory((Callback)new PropertyValueFactory(this.gsamdProId.getId()));
        this.proName.setCellValueFactory((Callback)new PropertyValueFactory(this.proName.getId()));
        this.proPrice.setCellValueFactory((Callback)new PropertyValueFactory(this.proPrice.getId()));
        this.gsamdBatchNo.setCellValueFactory((Callback)new PropertyValueFactory(this.gsamdBatchNo.getId()));
        this.gsamdBatch.setCellValueFactory((Callback)new PropertyValueFactory(this.gsamdBatch.getId()));
        this.gsamdValidDate.setCellValueFactory((Callback)new PropertyValueFactory(this.gsamdValidDate.getId()));
        this.gsamdStockQty.setCellValueFactory((Callback)new PropertyValueFactory(this.gsamdStockQty.getId()));
        this.gsamdRecipientQty.setCellValueFactory((Callback)new PropertyValueFactory(this.gsamdRecipientQty.getId()));
        this.proFactoryName.setCellValueFactory((Callback)new PropertyValueFactory(this.proFactoryName.getId()));
        this.proPlace.setCellValueFactory((Callback)new PropertyValueFactory(this.proPlace.getId()));
        this.proForm.setCellValueFactory((Callback)new PropertyValueFactory(this.proForm.getId()));
        this.proUnit.setCellValueFactory((Callback)new PropertyValueFactory(this.proUnit.getId()));
        this.proSpecs.setCellValueFactory((Callback)new PropertyValueFactory(this.proSpecs.getId()));
        this.proRegisterNo.setCellValueFactory((Callback)new PropertyValueFactory(this.proRegisterNo.getId()));
        this.gsamdStockStatus.setCellValueFactory((Callback)new PropertyValueFactory(this.gsamdStockStatus.getId()));
    }

    public void button(TableColumn<GetAllotOutData, String> column) {
        column.setCellFactory(tc -> {
            final Button button = new Button("\u5feb\u901f\u8fdb\u5165");
            TableCell<GetAllotOutData, String> cell = new TableCell<GetAllotOutData, String>(){

                protected void updateItem(String chuzhi, boolean empty) {
                    super.updateItem(chuzhi, empty);
                    if (empty) {
                        this.setText(null);
                        this.setGraphic(null);
                    } else if (this.getIndex() == 1) {
                        if (!"1".equals(chuzhi)) {
                            button.setDisable(true);
                        }
                        this.setGraphic((Node)button);
                    } else {
                        Text text = new Text();
                        text.setText(chuzhi);
                        this.setGraphic((Node)text);
                    }
                }
            };
            button.setOnMouseClicked(e -> {
                List<Integer> indexList = this.getSelectIndex();
                int index = indexList.get(0);
                GetAllotOutData outData = (GetAllotOutData)this.observableTableList.get(index - 1);
                this.voucherId = outData.getGsamhVoucherId();
                this.addAllotController.init();
                GysApplication.showView(AddView.class, (Modality)Modality.APPLICATION_MODAL);
            });
            return cell;
        });
    }

    private List<GsdcStatus> getAllStatus() {
        ArrayList<GsdcStatus> list = new ArrayList<GsdcStatus>();
        list.add(new GsdcStatus("1", "\u7533\u8bf7\u5f85\u786e\u8ba4"));
        list.add(new GsdcStatus("2", "\u53d1\u8d27\u5f85\u786e\u8ba4"));
        list.add(new GsdcStatus("3", "\u8c03\u5242\u5f85\u786e\u8ba4"));
        list.add(new GsdcStatus("4", "\u8c03\u5242\u5df2\u5b8c\u6210"));
        return list;
    }

    private List<Integer> getSelectIndex() {
        ArrayList<Integer> ids = new ArrayList<Integer>();
        if (!CollectionUtils.isEmpty(this.observableTableList)) {
            for (GetAllotOutData i : this.observableTableList) {
                if (!i.getCheckBox().isSelected().booleanValue()) continue;
                ids.add(i.getIndex());
            }
        }
        return ids;
    }

    public int getPageSize() {
        return this.pageSize;
    }

    public int getDefaultPageCount() {
        return this.defaultPageCount;
    }

    public ObservableList<GetAllotOutData> getBasicObservableTableList() {
        return this.basicObservableTableList;
    }

    public ObservableList<GetAllotOutData> getObservableTableList() {
        return this.observableTableList;
    }

    public ObservableList<GetAllotDetailOutData> getDetailObservableTableList() {
        return this.detailObservableTableList;
    }

    public ScrollPane getScrollPane() {
        return this.scrollPane;
    }

    public VBox getVBox() {
        return this.vBox;
    }

    public Button getEnterBtn() {
        return this.enterBtn;
    }

    public Button getAddBtn() {
        return this.addBtn;
    }

    public HBox getQueryHbox() {
        return this.queryHbox;
    }

    public HBox getQueryHbox1() {
        return this.queryHbox1;
    }

    public HBox getBoxView() {
        return this.boxView;
    }

    public TextField getVoucherIdQuery() {
        return this.voucherIdQuery;
    }

    public TextField getOrderNoQuery() {
        return this.orderNoQuery;
    }

    public TextField getBathCodeQuery() {
        return this.bathCodeQuery;
    }

    public TextField getProductCodeQuery() {
        return this.productCodeQuery;
    }

    public TextField getStoreCodeQuery() {
        return this.storeCodeQuery;
    }

    public TextField getRestoreCodeQuery() {
        return this.restoreCodeQuery;
    }

    public ChoiceBox<GsdcEmp> getAcceptPeopleQuery() {
        return this.acceptPeopleQuery;
    }

    public ChoiceBox<GsdcStatus> getStatusQuery() {
        return this.statusQuery;
    }

    public DatePicker getUpdateDateQuery() {
        return this.updateDateQuery;
    }

    public DatePicker getAcceptDateQuery() {
        return this.acceptDateQuery;
    }

    public TableView<GetAllotOutData> getTableView() {
        return this.tableView;
    }

    public TableView<GetAllotOutData> getTableViewTwo() {
        return this.tableViewTwo;
    }

    public TableView<GetAllotDetailOutData> getTableViewThree() {
        return this.tableViewThree;
    }

    public TableColumn<GetAllotOutData, String> getGsamhVoucherId1() {
        return this.gsamhVoucherId1;
    }

    public TableColumn<GetAllotOutData, String> getStatus1() {
        return this.status1;
    }

    public TableColumn<GetAllotOutData, String> getStatus2() {
        return this.status2;
    }

    public TableColumn<GetAllotOutData, String> getStatus3() {
        return this.status3;
    }

    public TableColumn<GetAllotOutData, CheckBox> getCheckBox() {
        return this.checkBox;
    }

    public TableColumn<GetAllotOutData, String> getIndex() {
        return this.index;
    }

    public TableColumn<GetAllotOutData, String> getGsamhVoucherId() {
        return this.gsamhVoucherId;
    }

    public TableColumn<GetAllotOutData, String> getGsamhDate() {
        return this.gsamhDate;
    }

    public TableColumn<GetAllotOutData, String> getGsamhFinishDate() {
        return this.gsamhFinishDate;
    }

    public TableColumn<GetAllotOutData, String> getGsamhFrom() {
        return this.gsamhFrom;
    }

    public TableColumn<GetAllotOutData, String> getGsamhTo() {
        return this.gsamhTo;
    }

    public TableColumn<GetAllotOutData, String> getGsamhType() {
        return this.gsamhType;
    }

    public TableColumn<GetAllotOutData, String> getGsamhTotalAmt() {
        return this.gsamhTotalAmt;
    }

    public TableColumn<GetAllotOutData, String> getGsamhTotalQty() {
        return this.gsamhTotalQty;
    }

    public TableColumn<GetAllotOutData, String> getGsamhInvoicesId() {
        return this.gsamhInvoicesId;
    }

    public TableColumn<GetAllotOutData, String> getGsamhStatus() {
        return this.gsamhStatus;
    }

    public TableColumn<GetAllotOutData, String> getGsamhEmp() {
        return this.gsamhEmp;
    }

    public TableColumn<GetAllotOutData, String> getGsamhEmp1() {
        return this.gsamhEmp1;
    }

    public TableColumn<GetAllotDetailOutData, String> getGsamdSerial() {
        return this.gsamdSerial;
    }

    public TableColumn<GetAllotDetailOutData, String> getGsamdProId() {
        return this.gsamdProId;
    }

    public TableColumn<GetAllotDetailOutData, String> getProName() {
        return this.proName;
    }

    public TableColumn<GetAllotDetailOutData, String> getProPrice() {
        return this.proPrice;
    }

    public TableColumn<GetAllotDetailOutData, String> getGsamdBatchNo() {
        return this.gsamdBatchNo;
    }

    public TableColumn<GetAllotDetailOutData, String> getGsamdBatch() {
        return this.gsamdBatch;
    }

    public TableColumn<GetAllotDetailOutData, String> getGsamdValidDate() {
        return this.gsamdValidDate;
    }

    public TableColumn<GetAllotDetailOutData, String> getGsamdStockQty() {
        return this.gsamdStockQty;
    }

    public TableColumn<GetAllotDetailOutData, String> getGsamdRecipientQty() {
        return this.gsamdRecipientQty;
    }

    public TableColumn<GetAllotDetailOutData, String> getGsamdStockStatus() {
        return this.gsamdStockStatus;
    }

    public TableColumn<GetAllotDetailOutData, String> getProFactoryName() {
        return this.proFactoryName;
    }

    public TableColumn<GetAllotDetailOutData, String> getProPlace() {
        return this.proPlace;
    }

    public TableColumn<GetAllotDetailOutData, String> getProForm() {
        return this.proForm;
    }

    public TableColumn<GetAllotDetailOutData, String> getProUnit() {
        return this.proUnit;
    }

    public TableColumn<GetAllotDetailOutData, String> getProSpecs() {
        return this.proSpecs;
    }

    public TableColumn<GetAllotDetailOutData, String> getProRegisterNo() {
        return this.proRegisterNo;
    }

    public Pagination getPagination() {
        return this.pagination;
    }

    public Insets getTableViewInsets() {
        return this.tableViewInsets;
    }

    public AddAllotController getAddAllotController() {
        return this.addAllotController;
    }

    public IndexController getIndexController() {
        return this.indexController;
    }

    public List<GetUserOutData> getOutDataList() {
        return this.outDataList;
    }

    public ObservableList<String> getEmpOptions() {
        return this.empOptions;
    }

    public List<String> getEmps() {
        return this.emps;
    }

    public Map<String, GetUserOutData> getEmpsMap() {
        return this.empsMap;
    }

    public String getVoucherId() {
        return this.voucherId;
    }

    public void setBasicObservableTableList(ObservableList<GetAllotOutData> basicObservableTableList) {
        this.basicObservableTableList = basicObservableTableList;
    }

    public void setObservableTableList(ObservableList<GetAllotOutData> observableTableList) {
        this.observableTableList = observableTableList;
    }

    public void setDetailObservableTableList(ObservableList<GetAllotDetailOutData> detailObservableTableList) {
        this.detailObservableTableList = detailObservableTableList;
    }

    public void setScrollPane(ScrollPane scrollPane) {
        this.scrollPane = scrollPane;
    }

    public void setVBox(VBox vBox) {
        this.vBox = vBox;
    }

    public void setEnterBtn(Button enterBtn) {
        this.enterBtn = enterBtn;
    }

    public void setAddBtn(Button addBtn) {
        this.addBtn = addBtn;
    }

    public void setQueryHbox(HBox queryHbox) {
        this.queryHbox = queryHbox;
    }

    public void setQueryHbox1(HBox queryHbox1) {
        this.queryHbox1 = queryHbox1;
    }

    public void setBoxView(HBox boxView) {
        this.boxView = boxView;
    }

    public void setVoucherIdQuery(TextField voucherIdQuery) {
        this.voucherIdQuery = voucherIdQuery;
    }

    public void setOrderNoQuery(TextField orderNoQuery) {
        this.orderNoQuery = orderNoQuery;
    }

    public void setBathCodeQuery(TextField bathCodeQuery) {
        this.bathCodeQuery = bathCodeQuery;
    }

    public void setProductCodeQuery(TextField productCodeQuery) {
        this.productCodeQuery = productCodeQuery;
    }

    public void setStoreCodeQuery(TextField storeCodeQuery) {
        this.storeCodeQuery = storeCodeQuery;
    }

    public void setRestoreCodeQuery(TextField restoreCodeQuery) {
        this.restoreCodeQuery = restoreCodeQuery;
    }

    public void setAcceptPeopleQuery(ChoiceBox<GsdcEmp> acceptPeopleQuery) {
        this.acceptPeopleQuery = acceptPeopleQuery;
    }

    public void setStatusQuery(ChoiceBox<GsdcStatus> statusQuery) {
        this.statusQuery = statusQuery;
    }

    public void setUpdateDateQuery(DatePicker updateDateQuery) {
        this.updateDateQuery = updateDateQuery;
    }

    public void setAcceptDateQuery(DatePicker acceptDateQuery) {
        this.acceptDateQuery = acceptDateQuery;
    }

    public void setTableView(TableView<GetAllotOutData> tableView) {
        this.tableView = tableView;
    }

    public void setTableViewTwo(TableView<GetAllotOutData> tableViewTwo) {
        this.tableViewTwo = tableViewTwo;
    }

    public void setTableViewThree(TableView<GetAllotDetailOutData> tableViewThree) {
        this.tableViewThree = tableViewThree;
    }

    public void setGsamhVoucherId1(TableColumn<GetAllotOutData, String> gsamhVoucherId1) {
        this.gsamhVoucherId1 = gsamhVoucherId1;
    }

    public void setStatus1(TableColumn<GetAllotOutData, String> status1) {
        this.status1 = status1;
    }

    public void setStatus2(TableColumn<GetAllotOutData, String> status2) {
        this.status2 = status2;
    }

    public void setStatus3(TableColumn<GetAllotOutData, String> status3) {
        this.status3 = status3;
    }

    public void setCheckBox(TableColumn<GetAllotOutData, CheckBox> checkBox) {
        this.checkBox = checkBox;
    }

    public void setIndex(TableColumn<GetAllotOutData, String> index) {
        this.index = index;
    }

    public void setGsamhVoucherId(TableColumn<GetAllotOutData, String> gsamhVoucherId) {
        this.gsamhVoucherId = gsamhVoucherId;
    }

    public void setGsamhDate(TableColumn<GetAllotOutData, String> gsamhDate) {
        this.gsamhDate = gsamhDate;
    }

    public void setGsamhFinishDate(TableColumn<GetAllotOutData, String> gsamhFinishDate) {
        this.gsamhFinishDate = gsamhFinishDate;
    }

    public void setGsamhFrom(TableColumn<GetAllotOutData, String> gsamhFrom) {
        this.gsamhFrom = gsamhFrom;
    }

    public void setGsamhTo(TableColumn<GetAllotOutData, String> gsamhTo) {
        this.gsamhTo = gsamhTo;
    }

    public void setGsamhType(TableColumn<GetAllotOutData, String> gsamhType) {
        this.gsamhType = gsamhType;
    }

    public void setGsamhTotalAmt(TableColumn<GetAllotOutData, String> gsamhTotalAmt) {
        this.gsamhTotalAmt = gsamhTotalAmt;
    }

    public void setGsamhTotalQty(TableColumn<GetAllotOutData, String> gsamhTotalQty) {
        this.gsamhTotalQty = gsamhTotalQty;
    }

    public void setGsamhInvoicesId(TableColumn<GetAllotOutData, String> gsamhInvoicesId) {
        this.gsamhInvoicesId = gsamhInvoicesId;
    }

    public void setGsamhStatus(TableColumn<GetAllotOutData, String> gsamhStatus) {
        this.gsamhStatus = gsamhStatus;
    }

    public void setGsamhEmp(TableColumn<GetAllotOutData, String> gsamhEmp) {
        this.gsamhEmp = gsamhEmp;
    }

    public void setGsamhEmp1(TableColumn<GetAllotOutData, String> gsamhEmp1) {
        this.gsamhEmp1 = gsamhEmp1;
    }

    public void setGsamdSerial(TableColumn<GetAllotDetailOutData, String> gsamdSerial) {
        this.gsamdSerial = gsamdSerial;
    }

    public void setGsamdProId(TableColumn<GetAllotDetailOutData, String> gsamdProId) {
        this.gsamdProId = gsamdProId;
    }

    public void setProName(TableColumn<GetAllotDetailOutData, String> proName) {
        this.proName = proName;
    }

    public void setProPrice(TableColumn<GetAllotDetailOutData, String> proPrice) {
        this.proPrice = proPrice;
    }

    public void setGsamdBatchNo(TableColumn<GetAllotDetailOutData, String> gsamdBatchNo) {
        this.gsamdBatchNo = gsamdBatchNo;
    }

    public void setGsamdBatch(TableColumn<GetAllotDetailOutData, String> gsamdBatch) {
        this.gsamdBatch = gsamdBatch;
    }

    public void setGsamdValidDate(TableColumn<GetAllotDetailOutData, String> gsamdValidDate) {
        this.gsamdValidDate = gsamdValidDate;
    }

    public void setGsamdStockQty(TableColumn<GetAllotDetailOutData, String> gsamdStockQty) {
        this.gsamdStockQty = gsamdStockQty;
    }

    public void setGsamdRecipientQty(TableColumn<GetAllotDetailOutData, String> gsamdRecipientQty) {
        this.gsamdRecipientQty = gsamdRecipientQty;
    }

    public void setGsamdStockStatus(TableColumn<GetAllotDetailOutData, String> gsamdStockStatus) {
        this.gsamdStockStatus = gsamdStockStatus;
    }

    public void setProFactoryName(TableColumn<GetAllotDetailOutData, String> proFactoryName) {
        this.proFactoryName = proFactoryName;
    }

    public void setProPlace(TableColumn<GetAllotDetailOutData, String> proPlace) {
        this.proPlace = proPlace;
    }

    public void setProForm(TableColumn<GetAllotDetailOutData, String> proForm) {
        this.proForm = proForm;
    }

    public void setProUnit(TableColumn<GetAllotDetailOutData, String> proUnit) {
        this.proUnit = proUnit;
    }

    public void setProSpecs(TableColumn<GetAllotDetailOutData, String> proSpecs) {
        this.proSpecs = proSpecs;
    }

    public void setProRegisterNo(TableColumn<GetAllotDetailOutData, String> proRegisterNo) {
        this.proRegisterNo = proRegisterNo;
    }

    public void setPagination(Pagination pagination) {
        this.pagination = pagination;
    }

    public void setTableViewInsets(Insets tableViewInsets) {
        this.tableViewInsets = tableViewInsets;
    }

    public void setAddAllotController(AddAllotController addAllotController) {
        this.addAllotController = addAllotController;
    }

    public void setIndexController(IndexController indexController) {
        this.indexController = indexController;
    }

    public void setOutDataList(List<GetUserOutData> outDataList) {
        this.outDataList = outDataList;
    }

    public void setEmpOptions(ObservableList<String> empOptions) {
        this.empOptions = empOptions;
    }

    public void setEmps(List<String> emps) {
        this.emps = emps;
    }

    public void setEmpsMap(Map<String, GetUserOutData> empsMap) {
        this.empsMap = empsMap;
    }

    public void setVoucherId(String voucherId) {
        this.voucherId = voucherId;
    }

    public boolean equals(Object o) {
        if (o == this) {
            return true;
        }
        if (!(o instanceof AllotController)) {
            return false;
        }
        AllotController other = (AllotController)o;
        if (!other.canEqual(this)) {
            return false;
        }
        if (this.getPageSize() != other.getPageSize()) {
            return false;
        }
        if (this.getDefaultPageCount() != other.getDefaultPageCount()) {
            return false;
        }
        ObservableList<GetAllotOutData> this$basicObservableTableList = this.getBasicObservableTableList();
        ObservableList<GetAllotOutData> other$basicObservableTableList = other.getBasicObservableTableList();
        if (this$basicObservableTableList == null ? other$basicObservableTableList != null : !this$basicObservableTableList.equals(other$basicObservableTableList)) {
            return false;
        }
        ObservableList<GetAllotOutData> this$observableTableList = this.getObservableTableList();
        ObservableList<GetAllotOutData> other$observableTableList = other.getObservableTableList();
        if (this$observableTableList == null ? other$observableTableList != null : !this$observableTableList.equals(other$observableTableList)) {
            return false;
        }
        ObservableList<GetAllotDetailOutData> this$detailObservableTableList = this.getDetailObservableTableList();
        ObservableList<GetAllotDetailOutData> other$detailObservableTableList = other.getDetailObservableTableList();
        if (this$detailObservableTableList == null ? other$detailObservableTableList != null : !this$detailObservableTableList.equals(other$detailObservableTableList)) {
            return false;
        }
        ScrollPane this$scrollPane = this.getScrollPane();
        ScrollPane other$scrollPane = other.getScrollPane();
        if (this$scrollPane == null ? other$scrollPane != null : !this$scrollPane.equals(other$scrollPane)) {
            return false;
        }
        VBox this$vBox = this.getVBox();
        VBox other$vBox = other.getVBox();
        if (this$vBox == null ? other$vBox != null : !this$vBox.equals(other$vBox)) {
            return false;
        }
        Button this$enterBtn = this.getEnterBtn();
        Button other$enterBtn = other.getEnterBtn();
        if (this$enterBtn == null ? other$enterBtn != null : !this$enterBtn.equals(other$enterBtn)) {
            return false;
        }
        Button this$addBtn = this.getAddBtn();
        Button other$addBtn = other.getAddBtn();
        if (this$addBtn == null ? other$addBtn != null : !this$addBtn.equals(other$addBtn)) {
            return false;
        }
        HBox this$queryHbox = this.getQueryHbox();
        HBox other$queryHbox = other.getQueryHbox();
        if (this$queryHbox == null ? other$queryHbox != null : !this$queryHbox.equals(other$queryHbox)) {
            return false;
        }
        HBox this$queryHbox1 = this.getQueryHbox1();
        HBox other$queryHbox1 = other.getQueryHbox1();
        if (this$queryHbox1 == null ? other$queryHbox1 != null : !this$queryHbox1.equals(other$queryHbox1)) {
            return false;
        }
        HBox this$boxView = this.getBoxView();
        HBox other$boxView = other.getBoxView();
        if (this$boxView == null ? other$boxView != null : !this$boxView.equals(other$boxView)) {
            return false;
        }
        TextField this$voucherIdQuery = this.getVoucherIdQuery();
        TextField other$voucherIdQuery = other.getVoucherIdQuery();
        if (this$voucherIdQuery == null ? other$voucherIdQuery != null : !this$voucherIdQuery.equals(other$voucherIdQuery)) {
            return false;
        }
        TextField this$orderNoQuery = this.getOrderNoQuery();
        TextField other$orderNoQuery = other.getOrderNoQuery();
        if (this$orderNoQuery == null ? other$orderNoQuery != null : !this$orderNoQuery.equals(other$orderNoQuery)) {
            return false;
        }
        TextField this$bathCodeQuery = this.getBathCodeQuery();
        TextField other$bathCodeQuery = other.getBathCodeQuery();
        if (this$bathCodeQuery == null ? other$bathCodeQuery != null : !this$bathCodeQuery.equals(other$bathCodeQuery)) {
            return false;
        }
        TextField this$productCodeQuery = this.getProductCodeQuery();
        TextField other$productCodeQuery = other.getProductCodeQuery();
        if (this$productCodeQuery == null ? other$productCodeQuery != null : !this$productCodeQuery.equals(other$productCodeQuery)) {
            return false;
        }
        TextField this$storeCodeQuery = this.getStoreCodeQuery();
        TextField other$storeCodeQuery = other.getStoreCodeQuery();
        if (this$storeCodeQuery == null ? other$storeCodeQuery != null : !this$storeCodeQuery.equals(other$storeCodeQuery)) {
            return false;
        }
        TextField this$restoreCodeQuery = this.getRestoreCodeQuery();
        TextField other$restoreCodeQuery = other.getRestoreCodeQuery();
        if (this$restoreCodeQuery == null ? other$restoreCodeQuery != null : !this$restoreCodeQuery.equals(other$restoreCodeQuery)) {
            return false;
        }
        ChoiceBox<GsdcEmp> this$acceptPeopleQuery = this.getAcceptPeopleQuery();
        ChoiceBox<GsdcEmp> other$acceptPeopleQuery = other.getAcceptPeopleQuery();
        if (this$acceptPeopleQuery == null ? other$acceptPeopleQuery != null : !this$acceptPeopleQuery.equals(other$acceptPeopleQuery)) {
            return false;
        }
        ChoiceBox<GsdcStatus> this$statusQuery = this.getStatusQuery();
        ChoiceBox<GsdcStatus> other$statusQuery = other.getStatusQuery();
        if (this$statusQuery == null ? other$statusQuery != null : !this$statusQuery.equals(other$statusQuery)) {
            return false;
        }
        DatePicker this$updateDateQuery = this.getUpdateDateQuery();
        DatePicker other$updateDateQuery = other.getUpdateDateQuery();
        if (this$updateDateQuery == null ? other$updateDateQuery != null : !this$updateDateQuery.equals(other$updateDateQuery)) {
            return false;
        }
        DatePicker this$acceptDateQuery = this.getAcceptDateQuery();
        DatePicker other$acceptDateQuery = other.getAcceptDateQuery();
        if (this$acceptDateQuery == null ? other$acceptDateQuery != null : !this$acceptDateQuery.equals(other$acceptDateQuery)) {
            return false;
        }
        TableView<GetAllotOutData> this$tableView = this.getTableView();
        TableView<GetAllotOutData> other$tableView = other.getTableView();
        if (this$tableView == null ? other$tableView != null : !this$tableView.equals(other$tableView)) {
            return false;
        }
        TableView<GetAllotOutData> this$tableViewTwo = this.getTableViewTwo();
        TableView<GetAllotOutData> other$tableViewTwo = other.getTableViewTwo();
        if (this$tableViewTwo == null ? other$tableViewTwo != null : !this$tableViewTwo.equals(other$tableViewTwo)) {
            return false;
        }
        TableView<GetAllotDetailOutData> this$tableViewThree = this.getTableViewThree();
        TableView<GetAllotDetailOutData> other$tableViewThree = other.getTableViewThree();
        if (this$tableViewThree == null ? other$tableViewThree != null : !this$tableViewThree.equals(other$tableViewThree)) {
            return false;
        }
        TableColumn<GetAllotOutData, String> this$gsamhVoucherId1 = this.getGsamhVoucherId1();
        TableColumn<GetAllotOutData, String> other$gsamhVoucherId1 = other.getGsamhVoucherId1();
        if (this$gsamhVoucherId1 == null ? other$gsamhVoucherId1 != null : !this$gsamhVoucherId1.equals(other$gsamhVoucherId1)) {
            return false;
        }
        TableColumn<GetAllotOutData, String> this$status1 = this.getStatus1();
        TableColumn<GetAllotOutData, String> other$status1 = other.getStatus1();
        if (this$status1 == null ? other$status1 != null : !this$status1.equals(other$status1)) {
            return false;
        }
        TableColumn<GetAllotOutData, String> this$status2 = this.getStatus2();
        TableColumn<GetAllotOutData, String> other$status2 = other.getStatus2();
        if (this$status2 == null ? other$status2 != null : !this$status2.equals(other$status2)) {
            return false;
        }
        TableColumn<GetAllotOutData, String> this$status3 = this.getStatus3();
        TableColumn<GetAllotOutData, String> other$status3 = other.getStatus3();
        if (this$status3 == null ? other$status3 != null : !this$status3.equals(other$status3)) {
            return false;
        }
        TableColumn<GetAllotOutData, CheckBox> this$checkBox = this.getCheckBox();
        TableColumn<GetAllotOutData, CheckBox> other$checkBox = other.getCheckBox();
        if (this$checkBox == null ? other$checkBox != null : !this$checkBox.equals(other$checkBox)) {
            return false;
        }
        TableColumn<GetAllotOutData, String> this$index = this.getIndex();
        TableColumn<GetAllotOutData, String> other$index = other.getIndex();
        if (this$index == null ? other$index != null : !this$index.equals(other$index)) {
            return false;
        }
        TableColumn<GetAllotOutData, String> this$gsamhVoucherId = this.getGsamhVoucherId();
        TableColumn<GetAllotOutData, String> other$gsamhVoucherId = other.getGsamhVoucherId();
        if (this$gsamhVoucherId == null ? other$gsamhVoucherId != null : !this$gsamhVoucherId.equals(other$gsamhVoucherId)) {
            return false;
        }
        TableColumn<GetAllotOutData, String> this$gsamhDate = this.getGsamhDate();
        TableColumn<GetAllotOutData, String> other$gsamhDate = other.getGsamhDate();
        if (this$gsamhDate == null ? other$gsamhDate != null : !this$gsamhDate.equals(other$gsamhDate)) {
            return false;
        }
        TableColumn<GetAllotOutData, String> this$gsamhFinishDate = this.getGsamhFinishDate();
        TableColumn<GetAllotOutData, String> other$gsamhFinishDate = other.getGsamhFinishDate();
        if (this$gsamhFinishDate == null ? other$gsamhFinishDate != null : !this$gsamhFinishDate.equals(other$gsamhFinishDate)) {
            return false;
        }
        TableColumn<GetAllotOutData, String> this$gsamhFrom = this.getGsamhFrom();
        TableColumn<GetAllotOutData, String> other$gsamhFrom = other.getGsamhFrom();
        if (this$gsamhFrom == null ? other$gsamhFrom != null : !this$gsamhFrom.equals(other$gsamhFrom)) {
            return false;
        }
        TableColumn<GetAllotOutData, String> this$gsamhTo = this.getGsamhTo();
        TableColumn<GetAllotOutData, String> other$gsamhTo = other.getGsamhTo();
        if (this$gsamhTo == null ? other$gsamhTo != null : !this$gsamhTo.equals(other$gsamhTo)) {
            return false;
        }
        TableColumn<GetAllotOutData, String> this$gsamhType = this.getGsamhType();
        TableColumn<GetAllotOutData, String> other$gsamhType = other.getGsamhType();
        if (this$gsamhType == null ? other$gsamhType != null : !this$gsamhType.equals(other$gsamhType)) {
            return false;
        }
        TableColumn<GetAllotOutData, String> this$gsamhTotalAmt = this.getGsamhTotalAmt();
        TableColumn<GetAllotOutData, String> other$gsamhTotalAmt = other.getGsamhTotalAmt();
        if (this$gsamhTotalAmt == null ? other$gsamhTotalAmt != null : !this$gsamhTotalAmt.equals(other$gsamhTotalAmt)) {
            return false;
        }
        TableColumn<GetAllotOutData, String> this$gsamhTotalQty = this.getGsamhTotalQty();
        TableColumn<GetAllotOutData, String> other$gsamhTotalQty = other.getGsamhTotalQty();
        if (this$gsamhTotalQty == null ? other$gsamhTotalQty != null : !this$gsamhTotalQty.equals(other$gsamhTotalQty)) {
            return false;
        }
        TableColumn<GetAllotOutData, String> this$gsamhInvoicesId = this.getGsamhInvoicesId();
        TableColumn<GetAllotOutData, String> other$gsamhInvoicesId = other.getGsamhInvoicesId();
        if (this$gsamhInvoicesId == null ? other$gsamhInvoicesId != null : !this$gsamhInvoicesId.equals(other$gsamhInvoicesId)) {
            return false;
        }
        TableColumn<GetAllotOutData, String> this$gsamhStatus = this.getGsamhStatus();
        TableColumn<GetAllotOutData, String> other$gsamhStatus = other.getGsamhStatus();
        if (this$gsamhStatus == null ? other$gsamhStatus != null : !this$gsamhStatus.equals(other$gsamhStatus)) {
            return false;
        }
        TableColumn<GetAllotOutData, String> this$gsamhEmp = this.getGsamhEmp();
        TableColumn<GetAllotOutData, String> other$gsamhEmp = other.getGsamhEmp();
        if (this$gsamhEmp == null ? other$gsamhEmp != null : !this$gsamhEmp.equals(other$gsamhEmp)) {
            return false;
        }
        TableColumn<GetAllotOutData, String> this$gsamhEmp1 = this.getGsamhEmp1();
        TableColumn<GetAllotOutData, String> other$gsamhEmp1 = other.getGsamhEmp1();
        if (this$gsamhEmp1 == null ? other$gsamhEmp1 != null : !this$gsamhEmp1.equals(other$gsamhEmp1)) {
            return false;
        }
        TableColumn<GetAllotDetailOutData, String> this$gsamdSerial = this.getGsamdSerial();
        TableColumn<GetAllotDetailOutData, String> other$gsamdSerial = other.getGsamdSerial();
        if (this$gsamdSerial == null ? other$gsamdSerial != null : !this$gsamdSerial.equals(other$gsamdSerial)) {
            return false;
        }
        TableColumn<GetAllotDetailOutData, String> this$gsamdProId = this.getGsamdProId();
        TableColumn<GetAllotDetailOutData, String> other$gsamdProId = other.getGsamdProId();
        if (this$gsamdProId == null ? other$gsamdProId != null : !this$gsamdProId.equals(other$gsamdProId)) {
            return false;
        }
        TableColumn<GetAllotDetailOutData, String> this$proName = this.getProName();
        TableColumn<GetAllotDetailOutData, String> other$proName = other.getProName();
        if (this$proName == null ? other$proName != null : !this$proName.equals(other$proName)) {
            return false;
        }
        TableColumn<GetAllotDetailOutData, String> this$proPrice = this.getProPrice();
        TableColumn<GetAllotDetailOutData, String> other$proPrice = other.getProPrice();
        if (this$proPrice == null ? other$proPrice != null : !this$proPrice.equals(other$proPrice)) {
            return false;
        }
        TableColumn<GetAllotDetailOutData, String> this$gsamdBatchNo = this.getGsamdBatchNo();
        TableColumn<GetAllotDetailOutData, String> other$gsamdBatchNo = other.getGsamdBatchNo();
        if (this$gsamdBatchNo == null ? other$gsamdBatchNo != null : !this$gsamdBatchNo.equals(other$gsamdBatchNo)) {
            return false;
        }
        TableColumn<GetAllotDetailOutData, String> this$gsamdBatch = this.getGsamdBatch();
        TableColumn<GetAllotDetailOutData, String> other$gsamdBatch = other.getGsamdBatch();
        if (this$gsamdBatch == null ? other$gsamdBatch != null : !this$gsamdBatch.equals(other$gsamdBatch)) {
            return false;
        }
        TableColumn<GetAllotDetailOutData, String> this$gsamdValidDate = this.getGsamdValidDate();
        TableColumn<GetAllotDetailOutData, String> other$gsamdValidDate = other.getGsamdValidDate();
        if (this$gsamdValidDate == null ? other$gsamdValidDate != null : !this$gsamdValidDate.equals(other$gsamdValidDate)) {
            return false;
        }
        TableColumn<GetAllotDetailOutData, String> this$gsamdStockQty = this.getGsamdStockQty();
        TableColumn<GetAllotDetailOutData, String> other$gsamdStockQty = other.getGsamdStockQty();
        if (this$gsamdStockQty == null ? other$gsamdStockQty != null : !this$gsamdStockQty.equals(other$gsamdStockQty)) {
            return false;
        }
        TableColumn<GetAllotDetailOutData, String> this$gsamdRecipientQty = this.getGsamdRecipientQty();
        TableColumn<GetAllotDetailOutData, String> other$gsamdRecipientQty = other.getGsamdRecipientQty();
        if (this$gsamdRecipientQty == null ? other$gsamdRecipientQty != null : !this$gsamdRecipientQty.equals(other$gsamdRecipientQty)) {
            return false;
        }
        TableColumn<GetAllotDetailOutData, String> this$gsamdStockStatus = this.getGsamdStockStatus();
        TableColumn<GetAllotDetailOutData, String> other$gsamdStockStatus = other.getGsamdStockStatus();
        if (this$gsamdStockStatus == null ? other$gsamdStockStatus != null : !this$gsamdStockStatus.equals(other$gsamdStockStatus)) {
            return false;
        }
        TableColumn<GetAllotDetailOutData, String> this$proFactoryName = this.getProFactoryName();
        TableColumn<GetAllotDetailOutData, String> other$proFactoryName = other.getProFactoryName();
        if (this$proFactoryName == null ? other$proFactoryName != null : !this$proFactoryName.equals(other$proFactoryName)) {
            return false;
        }
        TableColumn<GetAllotDetailOutData, String> this$proPlace = this.getProPlace();
        TableColumn<GetAllotDetailOutData, String> other$proPlace = other.getProPlace();
        if (this$proPlace == null ? other$proPlace != null : !this$proPlace.equals(other$proPlace)) {
            return false;
        }
        TableColumn<GetAllotDetailOutData, String> this$proForm = this.getProForm();
        TableColumn<GetAllotDetailOutData, String> other$proForm = other.getProForm();
        if (this$proForm == null ? other$proForm != null : !this$proForm.equals(other$proForm)) {
            return false;
        }
        TableColumn<GetAllotDetailOutData, String> this$proUnit = this.getProUnit();
        TableColumn<GetAllotDetailOutData, String> other$proUnit = other.getProUnit();
        if (this$proUnit == null ? other$proUnit != null : !this$proUnit.equals(other$proUnit)) {
            return false;
        }
        TableColumn<GetAllotDetailOutData, String> this$proSpecs = this.getProSpecs();
        TableColumn<GetAllotDetailOutData, String> other$proSpecs = other.getProSpecs();
        if (this$proSpecs == null ? other$proSpecs != null : !this$proSpecs.equals(other$proSpecs)) {
            return false;
        }
        TableColumn<GetAllotDetailOutData, String> this$proRegisterNo = this.getProRegisterNo();
        TableColumn<GetAllotDetailOutData, String> other$proRegisterNo = other.getProRegisterNo();
        if (this$proRegisterNo == null ? other$proRegisterNo != null : !this$proRegisterNo.equals(other$proRegisterNo)) {
            return false;
        }
        Pagination this$pagination = this.getPagination();
        Pagination other$pagination = other.getPagination();
        if (this$pagination == null ? other$pagination != null : !this$pagination.equals(other$pagination)) {
            return false;
        }
        Insets this$tableViewInsets = this.getTableViewInsets();
        Insets other$tableViewInsets = other.getTableViewInsets();
        if (this$tableViewInsets == null ? other$tableViewInsets != null : !this$tableViewInsets.equals(other$tableViewInsets)) {
            return false;
        }
        AddAllotController this$addAllotController = this.getAddAllotController();
        AddAllotController other$addAllotController = other.getAddAllotController();
        if (this$addAllotController == null ? other$addAllotController != null : !(this$addAllotController).equals(other$addAllotController)) {
            return false;
        }
        IndexController this$indexController = this.getIndexController();
        IndexController other$indexController = other.getIndexController();
        if (this$indexController == null ? other$indexController != null : !(this$indexController).equals(other$indexController)) {
            return false;
        }
        List<GetUserOutData> this$outDataList = this.getOutDataList();
        List<GetUserOutData> other$outDataList = other.getOutDataList();
        if (this$outDataList == null ? other$outDataList != null : !(this$outDataList).equals(other$outDataList)) {
            return false;
        }
        ObservableList<String> this$empOptions = this.getEmpOptions();
        ObservableList<String> other$empOptions = other.getEmpOptions();
        if (this$empOptions == null ? other$empOptions != null : !this$empOptions.equals(other$empOptions)) {
            return false;
        }
        List<String> this$emps = this.getEmps();
        List<String> other$emps = other.getEmps();
        if (this$emps == null ? other$emps != null : !(this$emps).equals(other$emps)) {
            return false;
        }
        Map<String, GetUserOutData> this$empsMap = this.getEmpsMap();
        Map<String, GetUserOutData> other$empsMap = other.getEmpsMap();
        if (this$empsMap == null ? other$empsMap != null : !(this$empsMap).equals(other$empsMap)) {
            return false;
        }
        String this$voucherId = this.getVoucherId();
        String other$voucherId = other.getVoucherId();
        return !(this$voucherId == null ? other$voucherId != null : !this$voucherId.equals(other$voucherId));
    }

    protected boolean canEqual(Object other) {
        return other instanceof AllotController;
    }

    public int hashCode() {
        int PRIME = 59;
        int result = 1;
        result = result * 59 + this.getPageSize();
        result = result * 59 + this.getDefaultPageCount();
        ObservableList<GetAllotOutData> $basicObservableTableList = this.getBasicObservableTableList();
        result = result * 59 + ($basicObservableTableList == null ? 43 : $basicObservableTableList.hashCode());
        ObservableList<GetAllotOutData> $observableTableList = this.getObservableTableList();
        result = result * 59 + ($observableTableList == null ? 43 : $observableTableList.hashCode());
        ObservableList<GetAllotDetailOutData> $detailObservableTableList = this.getDetailObservableTableList();
        result = result * 59 + ($detailObservableTableList == null ? 43 : $detailObservableTableList.hashCode());
        ScrollPane $scrollPane = this.getScrollPane();
        result = result * 59 + ($scrollPane == null ? 43 : $scrollPane.hashCode());
        VBox $vBox = this.getVBox();
        result = result * 59 + ($vBox == null ? 43 : $vBox.hashCode());
        Button $enterBtn = this.getEnterBtn();
        result = result * 59 + ($enterBtn == null ? 43 : $enterBtn.hashCode());
        Button $addBtn = this.getAddBtn();
        result = result * 59 + ($addBtn == null ? 43 : $addBtn.hashCode());
        HBox $queryHbox = this.getQueryHbox();
        result = result * 59 + ($queryHbox == null ? 43 : $queryHbox.hashCode());
        HBox $queryHbox1 = this.getQueryHbox1();
        result = result * 59 + ($queryHbox1 == null ? 43 : $queryHbox1.hashCode());
        HBox $boxView = this.getBoxView();
        result = result * 59 + ($boxView == null ? 43 : $boxView.hashCode());
        TextField $voucherIdQuery = this.getVoucherIdQuery();
        result = result * 59 + ($voucherIdQuery == null ? 43 : $voucherIdQuery.hashCode());
        TextField $orderNoQuery = this.getOrderNoQuery();
        result = result * 59 + ($orderNoQuery == null ? 43 : $orderNoQuery.hashCode());
        TextField $bathCodeQuery = this.getBathCodeQuery();
        result = result * 59 + ($bathCodeQuery == null ? 43 : $bathCodeQuery.hashCode());
        TextField $productCodeQuery = this.getProductCodeQuery();
        result = result * 59 + ($productCodeQuery == null ? 43 : $productCodeQuery.hashCode());
        TextField $storeCodeQuery = this.getStoreCodeQuery();
        result = result * 59 + ($storeCodeQuery == null ? 43 : $storeCodeQuery.hashCode());
        TextField $restoreCodeQuery = this.getRestoreCodeQuery();
        result = result * 59 + ($restoreCodeQuery == null ? 43 : $restoreCodeQuery.hashCode());
        ChoiceBox<GsdcEmp> $acceptPeopleQuery = this.getAcceptPeopleQuery();
        result = result * 59 + ($acceptPeopleQuery == null ? 43 : $acceptPeopleQuery.hashCode());
        ChoiceBox<GsdcStatus> $statusQuery = this.getStatusQuery();
        result = result * 59 + ($statusQuery == null ? 43 : $statusQuery.hashCode());
        DatePicker $updateDateQuery = this.getUpdateDateQuery();
        result = result * 59 + ($updateDateQuery == null ? 43 : $updateDateQuery.hashCode());
        DatePicker $acceptDateQuery = this.getAcceptDateQuery();
        result = result * 59 + ($acceptDateQuery == null ? 43 : $acceptDateQuery.hashCode());
        TableView<GetAllotOutData> $tableView = this.getTableView();
        result = result * 59 + ($tableView == null ? 43 : $tableView.hashCode());
        TableView<GetAllotOutData> $tableViewTwo = this.getTableViewTwo();
        result = result * 59 + ($tableViewTwo == null ? 43 : $tableViewTwo.hashCode());
        TableView<GetAllotDetailOutData> $tableViewThree = this.getTableViewThree();
        result = result * 59 + ($tableViewThree == null ? 43 : $tableViewThree.hashCode());
        TableColumn<GetAllotOutData, String> $gsamhVoucherId1 = this.getGsamhVoucherId1();
        result = result * 59 + ($gsamhVoucherId1 == null ? 43 : $gsamhVoucherId1.hashCode());
        TableColumn<GetAllotOutData, String> $status1 = this.getStatus1();
        result = result * 59 + ($status1 == null ? 43 : $status1.hashCode());
        TableColumn<GetAllotOutData, String> $status2 = this.getStatus2();
        result = result * 59 + ($status2 == null ? 43 : $status2.hashCode());
        TableColumn<GetAllotOutData, String> $status3 = this.getStatus3();
        result = result * 59 + ($status3 == null ? 43 : $status3.hashCode());
        TableColumn<GetAllotOutData, CheckBox> $checkBox = this.getCheckBox();
        result = result * 59 + ($checkBox == null ? 43 : $checkBox.hashCode());
        TableColumn<GetAllotOutData, String> $index = this.getIndex();
        result = result * 59 + ($index == null ? 43 : $index.hashCode());
        TableColumn<GetAllotOutData, String> $gsamhVoucherId = this.getGsamhVoucherId();
        result = result * 59 + ($gsamhVoucherId == null ? 43 : $gsamhVoucherId.hashCode());
        TableColumn<GetAllotOutData, String> $gsamhDate = this.getGsamhDate();
        result = result * 59 + ($gsamhDate == null ? 43 : $gsamhDate.hashCode());
        TableColumn<GetAllotOutData, String> $gsamhFinishDate = this.getGsamhFinishDate();
        result = result * 59 + ($gsamhFinishDate == null ? 43 : $gsamhFinishDate.hashCode());
        TableColumn<GetAllotOutData, String> $gsamhFrom = this.getGsamhFrom();
        result = result * 59 + ($gsamhFrom == null ? 43 : $gsamhFrom.hashCode());
        TableColumn<GetAllotOutData, String> $gsamhTo = this.getGsamhTo();
        result = result * 59 + ($gsamhTo == null ? 43 : $gsamhTo.hashCode());
        TableColumn<GetAllotOutData, String> $gsamhType = this.getGsamhType();
        result = result * 59 + ($gsamhType == null ? 43 : $gsamhType.hashCode());
        TableColumn<GetAllotOutData, String> $gsamhTotalAmt = this.getGsamhTotalAmt();
        result = result * 59 + ($gsamhTotalAmt == null ? 43 : $gsamhTotalAmt.hashCode());
        TableColumn<GetAllotOutData, String> $gsamhTotalQty = this.getGsamhTotalQty();
        result = result * 59 + ($gsamhTotalQty == null ? 43 : $gsamhTotalQty.hashCode());
        TableColumn<GetAllotOutData, String> $gsamhInvoicesId = this.getGsamhInvoicesId();
        result = result * 59 + ($gsamhInvoicesId == null ? 43 : $gsamhInvoicesId.hashCode());
        TableColumn<GetAllotOutData, String> $gsamhStatus = this.getGsamhStatus();
        result = result * 59 + ($gsamhStatus == null ? 43 : $gsamhStatus.hashCode());
        TableColumn<GetAllotOutData, String> $gsamhEmp = this.getGsamhEmp();
        result = result * 59 + ($gsamhEmp == null ? 43 : $gsamhEmp.hashCode());
        TableColumn<GetAllotOutData, String> $gsamhEmp1 = this.getGsamhEmp1();
        result = result * 59 + ($gsamhEmp1 == null ? 43 : $gsamhEmp1.hashCode());
        TableColumn<GetAllotDetailOutData, String> $gsamdSerial = this.getGsamdSerial();
        result = result * 59 + ($gsamdSerial == null ? 43 : $gsamdSerial.hashCode());
        TableColumn<GetAllotDetailOutData, String> $gsamdProId = this.getGsamdProId();
        result = result * 59 + ($gsamdProId == null ? 43 : $gsamdProId.hashCode());
        TableColumn<GetAllotDetailOutData, String> $proName = this.getProName();
        result = result * 59 + ($proName == null ? 43 : $proName.hashCode());
        TableColumn<GetAllotDetailOutData, String> $proPrice = this.getProPrice();
        result = result * 59 + ($proPrice == null ? 43 : $proPrice.hashCode());
        TableColumn<GetAllotDetailOutData, String> $gsamdBatchNo = this.getGsamdBatchNo();
        result = result * 59 + ($gsamdBatchNo == null ? 43 : $gsamdBatchNo.hashCode());
        TableColumn<GetAllotDetailOutData, String> $gsamdBatch = this.getGsamdBatch();
        result = result * 59 + ($gsamdBatch == null ? 43 : $gsamdBatch.hashCode());
        TableColumn<GetAllotDetailOutData, String> $gsamdValidDate = this.getGsamdValidDate();
        result = result * 59 + ($gsamdValidDate == null ? 43 : $gsamdValidDate.hashCode());
        TableColumn<GetAllotDetailOutData, String> $gsamdStockQty = this.getGsamdStockQty();
        result = result * 59 + ($gsamdStockQty == null ? 43 : $gsamdStockQty.hashCode());
        TableColumn<GetAllotDetailOutData, String> $gsamdRecipientQty = this.getGsamdRecipientQty();
        result = result * 59 + ($gsamdRecipientQty == null ? 43 : $gsamdRecipientQty.hashCode());
        TableColumn<GetAllotDetailOutData, String> $gsamdStockStatus = this.getGsamdStockStatus();
        result = result * 59 + ($gsamdStockStatus == null ? 43 : $gsamdStockStatus.hashCode());
        TableColumn<GetAllotDetailOutData, String> $proFactoryName = this.getProFactoryName();
        result = result * 59 + ($proFactoryName == null ? 43 : $proFactoryName.hashCode());
        TableColumn<GetAllotDetailOutData, String> $proPlace = this.getProPlace();
        result = result * 59 + ($proPlace == null ? 43 : $proPlace.hashCode());
        TableColumn<GetAllotDetailOutData, String> $proForm = this.getProForm();
        result = result * 59 + ($proForm == null ? 43 : $proForm.hashCode());
        TableColumn<GetAllotDetailOutData, String> $proUnit = this.getProUnit();
        result = result * 59 + ($proUnit == null ? 43 : $proUnit.hashCode());
        TableColumn<GetAllotDetailOutData, String> $proSpecs = this.getProSpecs();
        result = result * 59 + ($proSpecs == null ? 43 : $proSpecs.hashCode());
        TableColumn<GetAllotDetailOutData, String> $proRegisterNo = this.getProRegisterNo();
        result = result * 59 + ($proRegisterNo == null ? 43 : $proRegisterNo.hashCode());
        Pagination $pagination = this.getPagination();
        result = result * 59 + ($pagination == null ? 43 : $pagination.hashCode());
        Insets $tableViewInsets = this.getTableViewInsets();
        result = result * 59 + ($tableViewInsets == null ? 43 : $tableViewInsets.hashCode());
        AddAllotController $addAllotController = this.getAddAllotController();
        result = result * 59 + ($addAllotController == null ? 43 : ($addAllotController).hashCode());
        IndexController $indexController = this.getIndexController();
        result = result * 59 + ($indexController == null ? 43 : ($indexController).hashCode());
        List<GetUserOutData> $outDataList = this.getOutDataList();
        result = result * 59 + ($outDataList == null ? 43 : ($outDataList).hashCode());
        ObservableList<String> $empOptions = this.getEmpOptions();
        result = result * 59 + ($empOptions == null ? 43 : $empOptions.hashCode());
        List<String> $emps = this.getEmps();
        result = result * 59 + ($emps == null ? 43 : ($emps).hashCode());
        Map<String, GetUserOutData> $empsMap = this.getEmpsMap();
        result = result * 59 + ($empsMap == null ? 43 : ($empsMap).hashCode());
        String $voucherId = this.getVoucherId();
        result = result * 59 + ($voucherId == null ? 43 : $voucherId.hashCode());
        return result;
    }

    public String toString() {
        return "AllotController(pageSize=" + this.getPageSize() + ", defaultPageCount=" + this.getDefaultPageCount() + ", basicObservableTableList=" + this.getBasicObservableTableList() + ", observableTableList=" + this.getObservableTableList() + ", detailObservableTableList=" + this.getDetailObservableTableList() + ", scrollPane=" + this.getScrollPane() + ", vBox=" + this.getVBox() + ", enterBtn=" + this.getEnterBtn() + ", addBtn=" + this.getAddBtn() + ", queryHbox=" + this.getQueryHbox() + ", queryHbox1=" + this.getQueryHbox1() + ", boxView=" + this.getBoxView() + ", voucherIdQuery=" + this.getVoucherIdQuery() + ", orderNoQuery=" + this.getOrderNoQuery() + ", bathCodeQuery=" + this.getBathCodeQuery() + ", productCodeQuery=" + this.getProductCodeQuery() + ", storeCodeQuery=" + this.getStoreCodeQuery() + ", restoreCodeQuery=" + this.getRestoreCodeQuery() + ", acceptPeopleQuery=" + this.getAcceptPeopleQuery() + ", statusQuery=" + this.getStatusQuery() + ", updateDateQuery=" + this.getUpdateDateQuery() + ", acceptDateQuery=" + this.getAcceptDateQuery() + ", tableView=" + this.getTableView() + ", tableViewTwo=" + this.getTableViewTwo() + ", tableViewThree=" + this.getTableViewThree() + ", gsamhVoucherId1=" + this.getGsamhVoucherId1() + ", status1=" + this.getStatus1() + ", status2=" + this.getStatus2() + ", status3=" + this.getStatus3() + ", checkBox=" + this.getCheckBox() + ", index=" + this.getIndex() + ", gsamhVoucherId=" + this.getGsamhVoucherId() + ", gsamhDate=" + this.getGsamhDate() + ", gsamhFinishDate=" + this.getGsamhFinishDate() + ", gsamhFrom=" + this.getGsamhFrom() + ", gsamhTo=" + this.getGsamhTo() + ", gsamhType=" + this.getGsamhType() + ", gsamhTotalAmt=" + this.getGsamhTotalAmt() + ", gsamhTotalQty=" + this.getGsamhTotalQty() + ", gsamhInvoicesId=" + this.getGsamhInvoicesId() + ", gsamhStatus=" + this.getGsamhStatus() + ", gsamhEmp=" + this.getGsamhEmp() + ", gsamhEmp1=" + this.getGsamhEmp1() + ", gsamdSerial=" + this.getGsamdSerial() + ", gsamdProId=" + this.getGsamdProId() + ", proName=" + this.getProName() + ", proPrice=" + this.getProPrice() + ", gsamdBatchNo=" + this.getGsamdBatchNo() + ", gsamdBatch=" + this.getGsamdBatch() + ", gsamdValidDate=" + this.getGsamdValidDate() + ", gsamdStockQty=" + this.getGsamdStockQty() + ", gsamdRecipientQty=" + this.getGsamdRecipientQty() + ", gsamdStockStatus=" + this.getGsamdStockStatus() + ", proFactoryName=" + this.getProFactoryName() + ", proPlace=" + this.getProPlace() + ", proForm=" + this.getProForm() + ", proUnit=" + this.getProUnit() + ", proSpecs=" + this.getProSpecs() + ", proRegisterNo=" + this.getProRegisterNo() + ", pagination=" + this.getPagination() + ", tableViewInsets=" + this.getTableViewInsets() + ", addAllotController=" + this.getAddAllotController() + ", indexController=" + this.getIndexController() + ", outDataList=" + this.getOutDataList() + ", empOptions=" + this.getEmpOptions() + ", emps=" + this.getEmps() + ", empsMap=" + this.getEmpsMap() + ", voucherId=" + this.getVoucherId() + ")";
    }
}

